<!DOCTYPE HTML PUBLIC "-//ORA//DTD CD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>[Chapter 24] 24.55 java.io.PushbackReader (JDK 1.1)</TITLE>
<META NAME="author" CONTENT="David Flanagan">
<META NAME="date" CONTENT="Thu Jul 31 16:22:53 1997">
<META NAME="form" CONTENT="html">
<META NAME="metadata" CONTENT="dublincore.0.1">
<META NAME="objecttype" CONTENT="book part">
<META NAME="otheragent" CONTENT="gmat dbtohtml">
<META NAME="publisher" CONTENT="O'Reilly &amp; Associates, Inc.">
<META NAME="source" CONTENT="SGML">
<META NAME="subject" CONTENT="Java">
<META NAME="title" CONTENT="Java in a Nutshell">
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
</HEAD>
<body vlink="#551a8b" alink="#ff0000" text="#000000" bgcolor="#FFFFFF" link="#0000ee">

<DIV CLASS=htmlnav>
<H1><a href='index.htm'><IMG SRC="gifs/smbanner.gif"
     ALT="Java in a Nutshell" border=0></a></H1>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch24_54.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><B><FONT FACE="ARIEL,HELVETICA,HELV,SANSERIF" SIZE="-1">Chapter 24<br>The java.io Package</FONT></B></TD>
<td width=172 align=right valign=top><A HREF="ch24_56.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
</table>

&nbsp;
<hr align=left width=515>
</DIV>
<DIV CLASS=sect1>
<h2 CLASS=sect1><A CLASS="TITLE" NAME="JNUT2-CH-24-SECT-55">24.55 java.io.PushbackReader (JDK 1.1)</A></h2>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-24-SECT-55.1"></A></h3>
</DIV>

<P CLASS=para>
This class is a character input stream that uses another
input stream as its input source, and adds the ability to
push characters back onto the stream.  This feature is often
useful when writing parsers.

<P CLASS=para>
When you create a <tt CLASS=literal>PushbackReader</tt> stream, you specify
the stream to be read from, and may optionally specify the
size of the pushback buffer--i.e., the number of characters
that may be pushed back onto the stream or "unread."  If you
do not specify a size for this buffer, the default size is one
character.

<P CLASS=para>
<tt CLASS=literal>PushbackReader</tt> inherits or overrides all the standard
<tt CLASS=literal>Reader</tt> methods, and also adds three <tt CLASS=literal>unread()</tt>
methods that are used to push a single character, an array
of characters, or a portion of an array of characters back
onto the stream.

<P CLASS=para>
This class is the character stream analog of
<tt CLASS=literal>PushbackInputStream</tt>.  

<DIV CLASS=screen>
<P>
<PRE>
public class <tt CLASS=literal>PushbackReader</tt> extends FilterReader {
    // <tt CLASS=literal>Public Constructors</tt>
            public <tt CLASS=literal>PushbackReader</tt>(Reader <tt CLASS=literal>in</tt>, int <tt CLASS=literal>size</tt>);
            public <tt CLASS=literal>PushbackReader</tt>(Reader <tt CLASS=literal>in</tt>);
    // <tt CLASS=literal>Public Instance Methods</tt>
            public void <tt CLASS=literal>close</tt>() throws IOException;  //<tt CLASS=literal> Overrides FilterReader</tt>
            public boolean <tt CLASS=literal>markSupported</tt>();  //<tt CLASS=literal> Overrides FilterReader</tt>
            public int <tt CLASS=literal>read</tt>() throws IOException;  //<tt CLASS=literal> Overrides FilterReader</tt>
            public int <tt CLASS=literal>read</tt>(char[] <tt CLASS=literal>cbuf</tt>, int <tt CLASS=literal>off</tt>, int <tt CLASS=literal>len</tt>) throws IOException;  //<tt CLASS=literal> Overrides FilterReader</tt>
            public boolean <tt CLASS=literal>ready</tt>() throws IOException;  //<tt CLASS=literal> Overrides FilterReader</tt>
            public void <tt CLASS=literal>unread</tt>(int <tt CLASS=literal>c</tt>) throws IOException;
            public void <tt CLASS=literal>unread</tt>(char[] <tt CLASS=literal>cbuf</tt>, int <tt CLASS=literal>off</tt>, int <tt CLASS=literal>len</tt>) throws IOException;
            public void <tt CLASS=literal>unread</tt>(char[] <tt CLASS=literal>cbuf</tt>) throws IOException;
}
</PRE>
</DIV>

</DIV>

<DIV CLASS=sect2>
<h3 CLASS=sect2><A CLASS="TITLE" NAME="JNUT2-CH-24-SECT-55.2">Hierarchy:</A></h3>

<P CLASS=para>
Object->Reader->FilterReader->PushbackReader

</DIV>

</DIV>


<DIV CLASS=htmlnav>

<P>
<HR align=left width=515>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top><A HREF="ch24_54.htm"><IMG SRC="gifs/txtpreva.gif" ALT="Previous" border=0></A></td>
<td width=171 align=center valign=top><a href="index.htm"><img src='gifs/txthome.gif' border=0 alt='Home'></a></td>
<td width=172 align=right valign=top><A HREF="ch24_56.htm"><IMG SRC="gifs/txtnexta.gif" ALT="Next" border=0></A></td>
</tr>
<tr>
<td width=172 align=left valign=top>java.io.PushbackInputStream (JDK 1.0)</td>
<td width=171 align=center valign=top><a href="index/idx_0.htm"><img src='gifs/index.gif' alt='Book Index' border=0></a></td>
<td width=172 align=right valign=top>java.io.RandomAccessFile (JDK 1.0)</td>
</tr>
</table>
<hr align=left width=515>

<IMG SRC="gifs/smnavbar.gif" USEMAP="#map" BORDER=0> 
<MAP NAME="map"> 
<AREA SHAPE=RECT COORDS="0,0,108,15" HREF="../javanut/index.htm"
alt="Java in a Nutshell"> 
<AREA SHAPE=RECT COORDS="109,0,200,15" HREF="../langref/index.htm" 
alt="Java Language Reference"> 
<AREA SHAPE=RECT COORDS="203,0,290,15" HREF="../awt/index.htm" 
alt="Java AWT"> 
<AREA SHAPE=RECT COORDS="291,0,419,15" HREF="../fclass/index.htm" 
alt="Java Fundamental Classes"> 
<AREA SHAPE=RECT COORDS="421,0,514,15" HREF="../exp/index.htm" 
alt="Exploring Java"> 
</MAP>
</DIV>

</BODY>
</HTML>
